Many systems use different data formats and protocols. Often, applications need to process data and use services from different devices or domains. However, it may be difficult to develop applications fir the different devices because of the different protocols and data formats used by the different devices. Moreover, more and more data is being generated that is processed at central servers, but moving the data to the central servers often introduces delays and requires the use of a bandwidth to move the data to central servers.